/**
 * 每次搜索到一个数据，讲这个数据和前驱交换
 * 从而让经常访问的数据位于表的前端，减少查找次数
 */
#include<vector>
using namespace std;
int search(vector<int> arr,int k){
    int i=0;
    int n=arr.size();
    while ((arr[i]!=k)&&i<n)//查找k
    {
        i++;
    }//退出的时候[i]=k
    if(i<n&&i>0){//交换两个数据
        int temp=arr[i];
        arr[i]=arr[i-1];
        arr[i-1]=temp;
        return --i;
    }else{
        return -1;//交换失败
    }
    
}